Proximity-based item data communication

ABSTRACT

A method includes receiving, from a mobile computing device at a kiosk in a retail store, a first audio signal. The first audio signal includes identifiers of items referenced in a shopping list of an application associated with the retail store. The application is executed at the mobile computing device. The method includes sending, from the kiosk to a server, data based on the identifiers. The method includes, receiving, at the kiosk from the server, item location data. The item location data identifies a particular item of the shopping list and a corresponding location of the particular item in the retail store. The method also includes sending, from the kiosk to the mobile computing device, a second signal. The second signal includes the item location data.

PRIORITY CLAIM

This application claims priority from, and is a continuation of, U.S.patent application Ser. No. 16/250,178, filed on Jan. 17, 2019, which isa continuation of U.S. patent application Ser. No. 14/534,507, filed onNov. 6, 2014, issued as U.S. Pat. No. 10,194,262, each of which isincorporated herein by reference in its entirety.

FIELD OF THE DISCLOSURE

The present disclosure is generally related to communication of itemdata, and more particularly to communication of item data in response toa determination of proximity of a device to a particular location.

BACKGROUND

There are many available location tracking technologies. However, somelocation tracking technologies may require significant investment andmay provide limited accuracy for certain proximity-based applications.As an illustrative example, some location tracking technologies may notprovide sufficient accuracy to allow an “intelligent shopping display”to detect a person carrying a portable computing device (e.g., asmartphone) within a close range.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of a particular embodiment of a system for providingitem data in response to a determination that a mobile computing deviceis proximate to a particular location based on an exchange of audiosignals (e.g., in a human inaudible frequency range);

FIG. 2 is a diagram of another embodiment of a system for providing itemdata in response to a determination that a mobile computing device isproximate to a particular location based on an exchange of audio signals(e.g., in a human inaudible frequency range);

FIG. 3 is a diagram of another embodiment of a system for providing itemdata in response to a determination that a mobile computing device isproximate to a particular location based on an exchange of audio signals(e.g., in a human inaudible frequency range);

FIG. 4 is a flowchart of a particular embodiment of a method to displayinformation descriptive of an item that is located proximate to aparticular location at a mobile computing device;

FIG. 5 is a flowchart of a particular embodiment of a method to generatean alert at a mobile computing device in response to determining that anitem that is located proximate to a particular location is included on ashopping list;

FIG. 6 is a flowchart of a particular embodiment of a method to provideitem data via a speaker at a particular location via an audio signalthat is modulated within a human inaudible frequency range. The itemdata is received from a server via a network and identifies an item thatis located proximate to the speaker at the particular location; and

FIG. 7 is a block diagram of an illustrative embodiment of a generalcomputer system.

DETAILED DESCRIPTION

The present disclosure describes using audio capabilities of a mobilecomputing device and/or a display device to sense when the mobilecomputing device is within a viewing range of the display device (e.g.,less than about 1 to 2 meters from the display device). In some cases,audio signal data packets may be encoded in and modulated into the humaninaudible spectrum of 44.1-48 KHz (to prevent communication of signalswithin the human audible spectrum), and the audio signal data packetsmay be transmitted at a power level to be detectable via a microphonewhen the mobile computing device is within the viewing range. A servermay communicate item data associated with one or more items proximate tothe display device to a mobile computing device for display via anapplication executing at the mobile computing device, to anothercomputing device for display at the display device, or a combinationthereof.

To illustrate, a proximity-based data communication system may include acloud/server-based system that communicates with a display device (e.g.,a retail display). For example, the display device may include or may beproximate to a microphone and a speaker at a particular location withina retail store (e.g., on a particular aisle, proximate to particularitems, etc.). In some cases, the retail display may provide informationthat may be relevant to a shopper at the retail store (e.g., a storewidesale) or that may be relevant to the shopper at the particular locationwithin the retail store (e.g., a sale on particular items that arelocated near the retail display), among other alternatives. A device(e.g., a phone or other mobile computing device) may emit sound that isdetected by the microphone associated with the retail display. Thespeaker associated with the retail display may also emit sound that isdetected by the mobile computing device. For example, the mobilecomputing device may emit sound that may be detected by the speakerassociated with the retail display to indicate that the mobile computingdevice is within a viewing range of the retail display (e.g., less thanabout 1 to 2 meters from the retail display). The speaker associatedwith the retail display may emit sound that includes informationassociated with a location of the speaker. For example, a computingdevice associated with the retail display may encode speaker locationdata within an audio signal to indicate a location associated with thespeaker. To illustrate, the speaker location data may include anidentifier of the retail display (e.g., a retail display identifier, anaisle number, or location coordinates, among other alternatives) and anidentifier of a particular retail location (e.g., a store number or astore address, among other alternatives). An application executing atthe mobile computing device may detect the sound, extract the speakerlocation data by decoding the audio signal, and send informationassociated with the speaker location data to a server.

The server may determine, based on the speaker location data, item datathat includes information associated with item(s) that are locatedproximate to the speaker. In some cases, the server may send the itemdata to the mobile computing device, and the application executing atthe mobile computing device may display the item data. Alternatively oradditionally, the server may send the item data to the computing deviceassociated with the retail display for display at the retail display. Inan alternative example, phone identification information may be encodedinto audio signal data packets at the mobile computing device. The phoneidentification information may be detected at the microphone associatedwith the retail display and communicated to the server. In this example,the phone identification information may be used to provide a customizeddisplay of information that is targeted to a particular user (e.g., viathe mobile computing device, the retail display, or a combinationthereof). As an illustrative, non-limiting example, the phoneidentification information may be used to identify a shopper as beingassociated with a particular demographic profile, and the customizeddisplay of information may include information associated with item(s)that are popular with the particular demographic profile and that arelocated proximate to the retail display.

In a particular embodiment, a method includes receiving an audio signalat a mobile computing device. The method includes determining whetherthe audio signal is within a particular frequency range using anapplication executing at the mobile computing device. When the audiosignal is within the particular frequency range, the method may includeprocessing the audio signal to determine speaker location data. Thespeaker location data is encoded within the audio signal and indicates alocation associated with a speaker generating the audio signal. Themethod also includes sending a message including information associatedwith the speaker location data from the mobile computing device to aserver (e.g., a server associated with a retail entity that may beidentified by the application executing at the mobile computing device).The method further includes receiving item data from the server. Theitem data is related to an item that is located proximate to thespeaker, and the mobile computing device may display informationdescriptive of the item based on the item data.

In another particular embodiment, a computer-readable storage devicestores instructions that, when executed by a processor, cause theprocessor to perform operations. For example, the computer-readablestorage device and the processor may be included within a mobilecomputing device (e.g., a smartphone). The operations includedetermining whether an audio signal is within a particular frequencyrange. When the audio signal is within the particular frequency range,the audio signal may be processed to determine speaker location data.The speaker location data is extracted from the audio signal andindicates a location associated with a speaker. The operations furtherinclude sending a message including information associated with thespeaker location data to a server and receiving item data from theserver. The item data identifies an item that is located proximate tothe speaker. The operations may include generating an alert in responseto determining that the item is associated with a particular item on ashopping list.

In another particular embodiment, an apparatus includes a speaker, amicrophone, a processor, and a memory. The memory is accessible to theprocessor and includes instructions executable by the processor toperform operations. The operations include determining speaker locationdata associated with the speaker. The speaker may be associated with aparticular retail display (e.g., a retail display associated with aparticular aisle of merchandise) of a set of retail displays of aparticular retail location (e.g., a particular store) of a set of retaillocations associated with a single retail entity (e.g., a“brick-and-mortar”retailer). The speaker location data may include anidentifier of the particular retail display and an identifier of theparticular retail location. The operations may include causingtransmission of a first audio signal via the speaker. The first audiosignal may be modulated within a human inaudible frequency range, andthe speaker location data may be encoded within the first audio signal.A second audio signal from a mobile computing device may be received atthe microphone. The second audio signal may be modulated within thehuman inaudible frequency range. The operations may include causingtransmission of a message including information associated with thespeaker location data to a server and receiving item data from theserver that identifies an item that is located proximate to the speaker.

Referring to FIG. 1, a particular embodiment of a system ofcommunicating item data is illustrated and generally designated 100.FIG. 1 illustrates that item data may be provided in response to adetermination that a mobile computing device 102 is proximate to aparticular location (e.g., a speaker 104 located within a particularstore of a retail entity, such as “Tool Depot” in the example of FIG. 1)based on an exchange of audio signals (e.g., in a human inaudiblefrequency range). For example, the mobile computing device 102 may emita first audio signal 106, and the speaker 104 may emit a second audiosignal 108. In some cases, the second audio signal 108 may be detectableat the mobile computing device 102 when the mobile computing device 102is within a particular range of the speaker 104 (e.g., at a distance ofless than about 1 to 2 meters from the speaker 104). Further, the firstaudio signal 106 may be detectable by a microphone 110 associated withthe particular location (e.g., within a retail store) when the mobilecomputing device 102 is within a particular range of the microphone 110(e.g., at a distance of less than about 1 to 2 meters from themicrophone 110). Thus, FIG. 1 illustrates that when the mobile computingdevice 102 is proximate to the particular location, data may becommunicated from the mobile computing device 102 to the microphone 110via the first audio signal 106, from the speaker 104 to the mobilecomputing device 102 via the second audio signal 108, or a combinationthereof.

In the particular example of FIG. 1, an application 112 may be executingat the mobile computing device 102. In some cases, the application 112may be associated with a particular retail entity (e.g., “Tool Depot” inthe example of FIG. 1), and in some cases a user may launch theapplication 112 when the user is located at a particular retail locationof the retail entity (e.g., before entering the particular retaillocation or after entering the particular retail location). In FIG. 1,the speaker 104 may be associated with a first retail display 114 thatmay be located at a first aisle 116 at the particular retail location.For illustrative purposes only, FIG. 1 further illustrates a secondaisle 118 that includes a second speaker 120 and a second microphone122. However, it will be appreciated that more than two aisles ofmerchandise may be present at the particular retail location. FIG. 1further illustrates that a second retail display 124 may be associatedwith the second aisle 118. However, it will be appreciated that retaildisplays may not be associated with each aisle at the particular retaillocation. Alternatively, multiple retail displays, speakers,microphones, or combinations thereof may be located at various locationswithin the particular retail location. In a particular embodiment, atleast one retail display (including associated speakers and microphones)may be associated with each aisle of merchandise at the particularretail location.

In a particular embodiment, the mobile computing device 102 may beconfigured to receive the second audio signal 108. The application 112executing at the mobile computing device 102 may be configured todetermine whether the second audio signal 108 is within a particularfrequency range. For example, the particular frequency range may includea human inaudible frequency range of about 44.1 KHz to about 48 KHz.Based on a determination that the second audio signal 108 is within theparticular frequency range, the mobile computing device 102 may beconfigured to process the second audio signal 108 to determine speakerlocation data 124. The speaker location data 124 may be encoded withinthe second audio signal 108 and may indicate a location (e.g., an aislenumber, a store number, etc.) associated with the speaker 104 that isgenerating the second audio signal 108. To illustrate, a computingdevice (not shown in FIG. 1) associated with the speaker 104 may encodethe speaker location data 124 within the second audio signal 108. Thespeaker 104 may be separate from or included within the computingdevice. The speaker 104 may be communicatively coupled to the computingdevice via a wired connection, a wireless connection, or a combinationthereof. The application 112 executing at the mobile computing device102 may include logic to decode the second audio signal 108 in order toextract the speaker location data 124.

In some embodiments, the mobile computing device 102 may be configuredto send a message including the speaker location data 124 to a server126 via one or more networks. For example, the mobile computing device102 may send the message including the speaker location data 124 to theserver 126 via a first network 130 (e.g., a wireless network), via asecond network 130 (e.g., the Internet), or a combination thereof.Further, in some cases, the network 130 may be accessible to the mobilecomputing device 102 via a wireless connection (e.g., a Wi-Ficonnection) to an access point of a local area network (LAN) 132associated with the particular retail location.

In the example of FIG. 1, the server 126 may be associated with a retailentity (e.g., “Tool Depot”) and may be configured to query an itemdatabase 134 to determine item data 136 that identifies an item 138 (ora plurality of items) that is located proximate to the speaker 104. Forexample, FIG. 1 illustrates that the item 138 may be located in thefirst aisle 116. While FIG. 1 illustrates an example in which thespeaker 104 is located at an end of the first aisle 116 (e.g., at an“end cap” of the first aisle 116), it will be appreciated that thespeaker 104 may be located at another location (e.g., near particularmerchandise, such as the item 138, on the first aisle 116). In somecases, the speaker location data 124 may include an identifier of theparticular retail display (e.g., an identifier, such as a unique retaildisplay identifier, associated with the first retail display 114) and anidentifier of the particular retail location (e.g., a unique retaillocation identifier, such as a store number or other identifier of theparticular “Tool Depot” location). In some cases, the item data 136 mayidentify a plurality of items associated with the particular retaildisplay (e.g., the first retail display 114) based on mappinginformation for the particular retail display and the particular retaillocation available to the server 126. As an illustrative, non-limitingexample, the server 126 may query the item database 134 based on aretail display identifier (e.g., an aisle number, GPS coordinates, alocation associated with a particular aisle, or a combination thereof,among other alternatives) and a retail location identifier (e.g., astore number).

In some cases, the mobile computing device 102 may be configured toreceive the item data 136 that identifies the item 138 that is locatedproximate to the speaker 104 and to display information 140 that isdescriptive of the item 138 based on the item data 136. In the exampleillustrated in FIG. 1, the information 140 includes an image of the item138, an indication that the item 138 is on sale, a price of the item138, one or more features of the item 138 (e.g., sturdy, reliable), andwarranty information for the item 138. In some cases, the retail entity(e.g., “Tool Depot”) may be promoting the item 138. Alternatively, amanufacturer of the item 138 or another entity (e.g., a “do it yourself”publication) may be promoting the item 138. However, it will beappreciated that the example of FIG. 1 is for illustrative purposesonly, and various other types of information associated with the item138 may be displayed via the application 112 that is executing at themobile computing device 102. Further, in some cases, the item data 136may include information associated with multiple items, and informationassociated more than one item may be displayed. In a particularembodiment, when the mobile computing device 102 is no longer within aviewing range of the retail display 114 (e.g., when a shopper proceedsdown the first aisle 116, proceeds to the second aisle 118, etc.), theinformation 140 may no longer be displayed.

FIG. 1 illustrates that, alternatively or additionally, the first retaildisplay 114 may be configured to display information associated with theitem 138. For example, FIG. 1 illustrates that the first retail display114 may display an indication that the item 138 is on sale. As describedfurther herein with respect to FIG. 2, the first retail display 114 maydisplay alternative or additional information associated with aparticular item (e.g., a location of the particular item on the firstaisle 116). In some cases, the server 126 may send the informationassociated with the item 138 to a computing device (not shown in FIG. 1)for display at the first retail display 114 via the network 130, the LAN132, or a combination thereof. In some embodiments, responsive todetecting that the mobile computing device 102 is within a viewing range(e.g., within a range of less than about 1 to 2 meters), the firstretail display 114 may be configured to establish a wired or wirelessconnection with the LAN 132 in order to send the speaker location data124 to the server 126. The server 126 may determine information fordisplay via the first retail display 114 based on the speaker locationdata 124 (e.g., by querying the item database 134). Thus, in someembodiments, the speaker location data 124 may be sent to the server 126via a computing device other than the mobile computing device 102.

While not illustrated in the example of FIG. 1, the mobile computingdevice 102 may be configured to receive another audio signal. Forexample, the mobile computing device 102 may come into range of a thirdaudio signal 142 generated by the second speaker 120 associated with thesecond aisle 118. In this case, the mobile computing device 102 may beconfigured to determine whether the third audio signal 142 is within theparticular frequency range using the application 112. When the thirdaudio signal 142 is within the particular frequency range, the mobilecomputing device 102 may be configured to process the third audio signal142 to determine second speaker location data. The second speakerlocation data may be encoded in the third audio signal 142 and mayindicate the second location associated with the second speaker 120 thatis generating the third audio signal 142. The mobile computing device102 may be configured to send a second message (not shown in FIG. 1)that includes the second speaker location data to the server 126. Themobile computing device 102 may receive second item data (not shown inFIG. 1) that identifies a second item that is located proximate to thesecond speaker 120. While not shown in FIG. 1, the application 112 thatis executing at the mobile computing device 102 may display informationdescriptive of the second item based on the second item data.Alternatively or additionally, a second retail display 124 may beconfigured to display information associated with the second item thatis located proximate to the second speaker 120.

Thus, FIG. 1 illustrates that the application 112 executing at themobile computing device 102 may display the information 140 associatedwith the item 138 that is located proximate to the speaker 104. Theinformation 140 may be received at the mobile computing device 102 whenthe mobile computing device 102 is located within a particular range ofthe speaker 104. The speaker location data 124 may be encoded into thesecond audio signal 108, and the mobile computing device 102 may sendthe speaker location data 124 to the server 126 (e.g., via the wirelessnetwork 128) and may receive the item data 136 from the server 126. FIG.1 further illustrates that, in some cases, the first retail display 114may display information associated with the item 138 in response to themicrophone 110 detecting that the mobile computing device 102 is locatedwithin a viewing range based on the first audio signal 106.

FIG. 2 illustrates another embodiment of a system 200 for providing itemdata in response to a determination that a mobile computing device isproximate to a particular location based on an exchange of audiosignals. In FIG. 2, the application 112 includes a shopping list 202that identifies one or more items. In the illustrative example of FIG.2, the shopping list 202 identifies multiple items, including a firstitem 204, a second item 206, and a third item 208. However, it will beappreciated that the shopping list 202 may include an alternative numberof items. FIG. 2 illustrates that an alert 210 may be generated inresponse to a determination that an item that is located proximate tothe speaker 104 is associated with a particular item on the shoppinglist 202 (e.g., the second item 206 in the example of FIG. 2). FIG. 2further illustrates that the first retail display 114 may provideinformation regarding a location (e.g., a bin identifier, a shelfidentifier, or a distance from the retail display 114, among otheralternatives) of the particular item on the shopping list 202 (e.g., thesecond item 206) on the first aisle 116.

As further described with respect to FIG. 1, the mobile computing device102 may determine whether the second audio signal 108 is within aparticular frequency range (e.g., in a human inaudible frequency range).Based on a determination that the second audio signal 108 is within theparticular frequency range, the mobile computing device 102 may processthe second audio signal 108 to determine speaker location data.Referring to FIG. 1, the mobile computing device 102 may send a messageincluding the speaker location data 124 via a network to the server 126.The mobile computing device 102 may receive item data from the server126 that identifies an item that is located proximate to the speaker104. To illustrate, in the example of FIG. 2, the item data may identifyat least one item (e.g., the second item 206).

The mobile computing device 102 may be configured to determine whetherthe item that is located proximate to the speaker 104 is associated witha particular item on the shopping list 202. To illustrate, in theexample of FIG. 2, the application 112 may determine that the item dataincludes information associated with the second item 206 on the shoppinglist 202. In response, the application 112 may be configured to generatethe alert 210 to indicate to a user that the user is located in closeproximity to a particular item (e.g., the second item 206) on theshopping list 202, potentially allowing the user to more easily locatethe particular item at the particular retail location. While FIG. 2illustrates a particular example in which the alert 210 includes avisual indication (e.g., dashed lines around the second item 206 on theshopping list 202), alternative alerts are possible. For example, thealert 210 may include a visual indication, an audible indication, avibration, or any combination thereof.

FIG. 2 further illustrates a particular embodiment in which theapplication 112 may display an indication 212 that a particular item maybe removed from the shopping list 202. As an illustrative, non-limitingexample, a user may select the selectable removal option 212 (e.g., acheckbox, radio box, etc.) to identify the second item 206 as an item tobe removed and may select a selectable removal option 214 to remove thesecond item 206 from the shopping list 202. In alternative embodiments,the user may select an option (e.g., a checkbox, radio box, etc.) toindicate that an item on the shopping list 202 has been retrieved,allowing the user to identify particular items that have been retrievedand particular items that have not yet been retrieved. While not shownin FIG. 2, the application 112 may update the shopping list 202 toremove a particular selected item (e.g., the second item 206) inresponse to selection of the selectable removal option 214.

In the particular embodiment illustrated in FIG. 2, the first retaildisplay 114 displays information associated with the second item 206 onthe shopping list 202. In the example of FIG. 2, the informationdisplayed at the first retail display 114 includes an indication thatthe second item 206 is located at a particular location on the firstaisle 116 (e.g., in a particular bin 218). FIG. 2 illustrates thatproviding a shopper with more detailed location information for aparticular item on the shopping list 202 (e.g., an indication of alocation of the particular item on the first aisle 116) may allow theshopper to more quickly locate the particular item on the shopping list202.

Referring to FIG. 3, another embodiment of a system for providing itemdata is illustrated and generally designated 300. In FIG. 3, theshopping list 202 described with respect to FIG. 2 may be communicatedto the server 126 in order to identify location(s) of particular item(s)on the shopping list 202. In the example of FIG. 3, a kiosk 302 includesa speaker 304 to generate an audio signal 306 (identified in FIG. 3 as“Audio Signal (4)”), a microphone 308 to receive the first audio signal106 from the mobile computing device 102, and a retail display 310.However, it will be appreciated that the kiosk 302 is for illustrativepurposes only and that other speakers/microphones/displays atalternative locations may be used. To illustrate, referring to FIG. 1,the first speaker 104 may be used to generate the audio signal 306 andthe first microphone 110 of the first aisle 116 may be used to receivethe first audio signal 106, or the second speaker 120 may be used togenerate the audio signal 306 and the second microphone 122 of thesecond aisle 118 may be used to receive the first audio signal 106.

FIG. 3 illustrates that the application 112 executing on the mobilecomputing device 102 may transmit the shopping list 202 to the kiosk 302(e.g., via the audio signal 106). The kiosk 302 may be configured tosend information associated the shopping list 202 to the server 126 viaone or more networks. For example, the kiosk 302 may send the shoppinglist 202 to the server 126 via the LAN 132, the network 130, or acombination thereof. In response to receiving the shopping list 202, theserver 126 may be configured to determine item location data 312. Forexample, the item location data 312 may identify a particular locationwithin the retail location where the item(s) on the shopping list 202may be found. To illustrate, the server 126 may query the item database134, a location database 314, or a combination thereof to determine alocation associated with the first item 204, the second item 206, andthe third item 208 on the shopping list 202. The server 126 may send theitem location data 312 to the kiosk 302 for display via the retaildisplay 310.

In the illustrative example of FIG. 3, the item location data 312includes a first indication that the first item 204 is located on thesecond aisle 118, a second indication that the second item 206 islocated on the first aisle 116, and a third indication that the thirditem 208 is located on a third aisle 316. In alternative embodiments,more than three aisles may be associated with the retail location.Further, in some cases, one or more items on the shopping list 202 maynot be located at the particular retail location (e.g., one or moreitems may be located at a different store). FIG. 3 further illustratesthat, in some embodiments, the speaker 304 may transmit the audio signal306 to the mobile computing device 102. The audio signal 306 may bemodulated within the human inaudible frequency range, and item data(e.g., the item location data 312) may be encoded within the audiosignal 306. While not shown in FIG. 3, the application 112 executing atthe mobile computing device 102 may display the item location data 312(e.g., in a currently displayed window or in a newly displayed window).

Referring to FIG. 4, a particular embodiment of a method to displayinformation descriptive of an item that is located proximate to aparticular location (e.g., within a retail store) at a mobile computingdevice is illustrated and generally designated 400.

The method 400 includes receiving an audio signal at a microphoneassociated with a mobile computing device, at 402. For example,referring to FIG. 1, the mobile computing device 102 may receive thesecond audio signal 108 from the speaker 104 associated with the firstaisle 116.

The method 400 includes determining whether the audio signal is within aparticular frequency range using an application executing at the mobilecomputing device, at 404. For example, referring to FIG. 1, theapplication 112 executing at the mobile computing device 102 may includean application associated with a retail entity (e.g., “Tool Depot”) thatdetermines whether the second audio signal 108 is within the particularfrequency range. In some cases, the second audio signal 108 may bemodulated within a human inaudible frequency range of about 44.1 KHz toabout 48 KHz. Further, in some cases, the second audio signal 108 may beamplified by the speaker 104 to a magnitude that is detectable by themobile computing device 102 when the mobile computing device 102 islocated within a particular range of the speaker 104 (e.g., less thanabout 1 to 2 meters from the speaker 104). In some cases, the secondaudio signal 108 may not be detectable when the mobile computing device102 is located outside the range (e.g., more than about 2 meters fromthe speaker 104).

In response to a determination that the audio signal is not within theparticular frequency range, the method may end, at 406. In response to adetermination that the audio signal is within the particular frequencyrange, the method may include processing the audio signal to determinespeaker location data, at 408. The speaker location data is encodedwithin the audio signal and indicates a location associated with aspeaker generating the audio signal.

For example, referring to FIG. 1, the speaker location data 124 may beencoded within the second audio signal 108 and may indicate the locationassociated with the speaker 104. In a particular embodiment, the speaker104 may be associated with the first retail display 114 of a set ofretail displays of a particular retail location of a set of retaillocations associated with a single retail entity (e.g., “Tool Depot”).In some cases, the speaker location data 124 may include an identifierof the particular retail display (e.g., the first retail display 114)and an identifier of the particular retail location (e.g., anidentifier, such as a store number, of a particular “Tool Depot” retaillocation). While FIG. 1 illustrates one example where the item data 136includes information associated with a single item (e.g., the item 138),in other cases the item data 136 may identify a plurality of itemsassociated with the particular retail display (e.g., the first retaildisplay 114). In some cases, the item data 136 associated with theparticular retail display (e.g., the first retail display 114) may bedetermined based on information for the particular retail display andinformation for the particular retail location available to the server126. To illustrate, the server 126 may query the item database 134 todetermine the item data 136 that is associated with the particularretail display (e.g., the first retail display 114). As an illustrative,non-limiting example, the item database 134 may identify individualretail displays by unique retail display identifiers and may identifyindividual retail stores by unique retail location identifiers. Further,the item database 134 may store information regarding particular itemsthat are proximate to particular retail displays at particular retaillocations. In some cases, the item database 134 may be periodicallyupdated to track re-location of item(s), addition of item(s), andremoval of item(s). To illustrate, an employee or other individual at aparticular retail location may provide periodic updates to the server126 that may be reflected in the item database 134.

The method 400 includes sending a message including the speaker locationdata via a network from the mobile computing device to a server, at 408.For example, referring to FIG. 1, the application 112 that is executingat the mobile computing device 102 may be associated with a retailentity (e.g., “Tool Depot”) and may send a message that includes thespeaker location data 124 to the server 126 (e.g., a “Tool Depot” serveridentified by the application). In the embodiment illustrated in FIG. 1,the speaker location data 124 may be sent to the server 126 via thewireless network 128 and the network 130. Alternatively, the speakerlocation data 124 may be sent to the server 126 via the wireless network128, the network 130, the LAN 132, or any combination thereof.

The method 400 includes receiving, at the mobile computing device, itemdata from the server that identifies an item that is located proximateto the speaker, at 410. To illustrate, referring to the example of FIG.1, the mobile computing device 102 may receive the item data 136 fromthe server 126. In the example of FIG. 1, the server 126 communicatesthe item data 136 to the mobile computing device 102 via the network 130(e.g., the Internet) and via a separate wireless network 128.Alternatively, the item data 136 may be communicated from the server 126to the mobile computing device 102 via the wireless network 128, thenetwork 130, the LAN 132, or any combination thereof. For example, whilenot shown in FIG. 1, the mobile computing device 102 may communicatewith the server 126 via another wireless network (e.g., a Wi-Fi networkassociated with the particular retail location) that may provide accessto the network 130 (e.g., the Internet).

The method 400 includes displaying, at the mobile computing device,information descriptive of the item based on the item data, at 412. Forexample, referring to FIG. 1, the application 112 executing at themobile computing device 102 may display the information 140 that isdescriptive of the item 138 based on the item data 136.

Thus, FIG. 4 illustrates that information associated with an item may bereceived at a mobile computing device in response to the mobilecomputing device being located within a particular range of a speaker(e.g., at a retail location). The mobile computing device maycommunicate speaker location data to a server, and the server maycommunicate item data to the mobile computing device. The applicationexecuting at the mobile communication device may display the item datareceived from the server.

Referring to FIG. 5, a particular embodiment of a method to generate analert at a mobile computing device in response to determining that anitem that is located proximate to a particular location is included on ashopping list is illustrated and generally designated 500.

The method 500 includes receiving an audio signal, at 502. For example,referring to the example of FIG. 2, the mobile computing device 102 mayreceive the second audio signal 108 from the speaker 104. In response toreceiving the audio signal, the method 500 includes determining whetherthe audio signal is within a particular frequency range, at 504. Whenthe audio signal is not within the particular frequency range, themethod 500 may end at 506. When the audio signal is within the frequencyrange, the method 500 may include processing the audio signal todetermine speaker location data, at 508. The speaker location data maybe encoded within the audio signal and may indicate a locationassociated with a speaker that is generating the audio signal. Forexample, referring to FIG. 2, the speaker location data may be encodedwithin the second audio signal 108 and may indicate a locationassociated with the speaker 104.

The method 500 includes receiving item data that identifies an item thatis located proximate to the speaker, at 510. The method 500 includesdetermining whether the item that is located proximate to the speaker isassociated with a particular item on a shopping list, at 512. When theitem is not associated with a particular item on the shopping list, themethod 500 may end at 514. When the item is associated with a particularitem on the shopping list, the method 500 may include generating analert to indicate a proximity to the particular item on the shoppinglist, at 516. In some cases, the alert may include a visual indication,an audible indication, a vibration, or a combination thereof. In theparticular example illustrated in FIG. 2, the alert 210 includes avisual indication (e.g., a dashed line around the second item 206 on theshopping list 202). However, it will be appreciated that the alert 210may include an alternative visual indication, an audible indication, avibration, or a combination thereof. FIG. 2 also illustrates aparticular embodiment in which the mobile computing device 102 displaysa selectable removal option 214 to remove a particular item (e.g., thesecond item 206 identified via a selectable checkbox) from the shoppinglist 202. To illustrate, a user of the mobile computing device 102 mayreceive the alert 210 and retrieve the second item 206 from a particularlocation (e.g., the bin 218). Thus, the selectable removal option 214may allow the user to remove items from the shopping list 202 as theuser locates items on the shopping list 202 (e.g., adds the items to aphysical shopping cart).

Referring to FIG. 6, another particular embodiment of a method toprovide item data via a speaker at a particular location via an audiosignal that is modulated within a human inaudible frequency range isillustrated and generally designated 600.

The method 600 includes determining speaker location data associatedwith the speaker, at 602. The speaker may be included within orproximate to a particular retail display of a set of retail displays ata particular retail location. Further, the speaker location data mayinclude an identifier of the particular retail display (e.g., a retaildisplay identifier) and an identifier of the particular retail location(e.g., a store number).

The method 600 includes causing transmission of a first audio signal viathe speaker, at 604. The first audio signal may be modulated within ahuman inaudible frequency range, and the speaker location dataassociated with the speaker may be encoded within the first audio signaland transmitted from the speaker associated with the retail display to amobile computing device. The method 600 includes receiving a secondaudio signal at the microphone associated with the retail display from amobile computing device, at 606. The second audio signal may bemodulated within the human inaudible frequency range. The method 600further includes causing transmission of a message including the speakerlocation data to a server, at 608.

The method 600 includes receiving item data, at 610. The item data maybe received from the server and may identify an item that is locatedproximate to the speaker. In some embodiments, the item data may furtheridentify a particular location of the item at the particular retailerlocation.

While not illustrated in FIG. 6, in some embodiments the method 600 mayinclude causing transmission of a third audio signal to the mobilecomputing device via the speaker. The third audio signal may bemodulated within the human inaudible frequency range, and the item datamay be encoded within the third audio signal. Further, while notillustrated in FIG. 6, in some embodiments the method 600 may furtherinclude causing display of the item data via the particular retailerdisplay. To illustrate, referring to the example of FIG. 1, anindication that the item 128 is on sale may be displayed at the retaildisplay 114. As another example, referring to FIG. 2, an indication of aparticular location of the second item 206 on the first aisle 116 may bedisplayed at the first retail display 114.

Thus, FIG. 6 illustrates a particular example of a method of providingitem data via a speaker at a particular location via an audio signalthat is modulated within a human inaudible frequency range. The itemdata identifies item(s) located proximate to the speaker at theparticular location. The item data may provide an improved shoppingexperience and may allow a retailer to provide information regardingitem(s) that may be relevant to a shopper when the shopper is determinedto be within a close range of a particular location (e.g., less thanabout 1 to 2 meters from the particular location).

Referring to FIG. 7, an illustrative embodiment of a general computersystem is shown and is designated 700. The computer system 700 includesa set of instructions that can be executed to cause the computer system700 to perform any one or more of the methods or computer basedfunctions disclosed herein. The computer system 700 may operate as astandalone device or may be connected, e.g., using a network, to othercomputer systems or peripheral devices. For example, the computer system700 may include or be included within any one or more of the mobilecomputing device 102, a computing device at a particular retail location(e.g., a computing device associated with a retail display or the kiosk302 of FIG. 3), or combinations thereof described with reference toFIGS. 1-3.

In a networked deployment, the computer system 700 may operate in thecapacity of a server or as a client user computer in a server-clientuser network environment, or as a peer computer system in a peer-to-peer(or distributed) network environment. The computer system 700 may alsobe implemented as or incorporated into various devices, such as a mobiledevice, a palmtop computer, a laptop computer, a desktop computer, acommunications device, a wireless telephone, a personal computer (PC), atablet PC, a personal digital assistant (PDA), an endpoint device, a webappliance, or any other machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine. In a particular embodiment, the computer system 700 maybe implemented using electronic devices that provide video, audio, ordata communication. Further, while a single computer system 700 isillustrated, the term “system” shall also be taken to include anycollection of systems or sub-systems that individually or jointlyexecute a set, or multiple sets, of instructions to perform one or morecomputer functions.

As illustrated in FIG. 7, the computer system 700 may include aprocessor 702, e.g., a central processing unit (CPU), a graphicsprocessing unit (GPU), or both. For example, the processor 702 mayinclude or correspond to a processor of the mobile computing device 102or a processor of a device at a particular retail location. Moreover,the computer system 700 may include a main memory 704 and a staticmemory 706, which can communicate with each other via a bus 708. Forexample, the main memory 704 may include or correspond to a memory ofthe mobile computing device 102 or a memory of a device at a particularretail location. As shown, the computer system 700 may further include avideo display unit 710, such as a liquid crystal display (LCD), a lightemitting diode (LED) display, a touch screen display, a flat paneldisplay, or a solid state display. Additionally, the computer system 700may include an input device 712, such as a remote control device or akeyboard, and a cursor control device 714, such as a mouse. In someembodiments, the input device 712 and the cursor control device 714 maybe integrated into a single device, such as a capacitive touch screeninput device. The computer system 700 may also include a drive unit 716,a signal generation device 718, such as a speaker (e.g., the speakers104 of FIG. 1-2 or the speaker 304 of FIG. 3), and a network interfacedevice 720. Some computer systems 700 may not include an input device(e.g., a server may not include an input device).

In a particular embodiment, as depicted in FIG. 7, the drive unit 716may include a computer-readable storage device 722 in which one or moresets of instructions 724, e.g. software, can be embedded. Thecomputer-readable storage device 722 may be random access memory (RAM),read-only memory (ROM), programmable read-only memory (PROM), erasablePROM (EPROM), electrically erasable PROM (EEPROM), register(s),solid-state memory, hard disk, a removable disk, a compact discread-only memory (CD-ROM), other optical disk storage, magnetic diskstorage, magnetic storage devices, or any other storage device that canbe used to store program code in the form of instructions or data andthat can be accessed by a computer and/or a processor. Acomputer-readable storage device is not a signal. Further, theinstructions 724 may embody one or more of the methods or logic asdescribed herein. In the embodiment illustrated in FIG. 7, theinstructions 724 include an audio signal processing module 726. Theinstructions 724, including the audio signal processing module 726, maybe executable by the processor 702 to perform one or more functions ormethods described herein, such as the methods 400, 500, or 600 describedwith reference to FIG. 4, FIG. 5, or FIG. 6, respectively. In aparticular embodiment, the instructions 724 may reside completely, or atleast partially, within the main memory 704, the static memory 706,and/or within the processor 702 during execution by the computer system700. The main memory 704 and the processor 702 also may include acomputer-readable storage device.

In an alternative embodiment, dedicated hardware implementations, suchas application specific integrated circuits, programmable logic arraysand other hardware devices, may be constructed to implement one or moreof the methods described herein. Various embodiments may include avariety of electronic and computer systems. One or more embodimentsdescribed herein may implement functions using two or more specificinterconnected hardware modules or devices with related control and datasignals that can be communicated between and through the modules, or asportions of an application-specific integrated circuit (ASIC).Accordingly, the present system encompasses software, firmware, andhardware implementations.

In accordance with various embodiments of the present disclosure, themethods described herein may be implemented by software programsexecutable by a computer system, a processor, or a device, which mayinclude forms of instructions embodied as a state machine implementedwith logic components in an ASIC or a field programmable gate array(FPGA) device. Further, in an exemplary, non-limiting embodiment,implementations may include distributed processing, component/objectdistributed processing, and parallel processing. Alternatively, virtualcomputer system processing may be constructed to implement one or moreof the methods or functionality as described herein. It is further notedthat a computing device, such as a processor, a controller, a statemachine or other suitable device for executing instructions to performoperations may perform such operations directly or indirectly by way ofone or more intermediate devices directed by the computing device.

The present disclosure includes a computer-readable storage 722 thatstores instructions 724, so that a device connected to a network 728 maycommunicate voice, video or data over the network 728. While thecomputer-readable storage 722 is shown to be a single device, thecomputer-readable storage 722 may include a single device or multipledevices, such as a centralized or distributed database, and/orassociated caches and servers that store one or more sets ofinstructions. The computer-readable storage 722 is capable of storing aset of instructions for execution by a processor to cause a computersystem to perform any one or more of the methods or operations disclosedherein. For example, the computer-readable storage device 722 may storeinstructions for execution by a processor to cause a computer system toperform any one or more of the methods 400, 500, or 600 described withreference to FIG. 4, FIG. 5, or FIG. 6, respectively.

In a particular non-limiting, exemplary embodiment, thecomputer-readable storage 722 may include a solid-state memory such asembedded memory (or a memory card or other package that houses one ormore non-volatile read-only memories). Further, the computer-readablestorage 722 may be a random access memory or other volatile re-writablememory. Additionally, the computer-readable storage 722 may include amagneto-optical or optical device, such as a disk or tapes or otherstorage device. Accordingly, the disclosure is considered to include anyone or more of a computer-readable storage device and other equivalentsand successor devices, in which data or instructions may be stored.

Although the one or more components and functions may be describedherein as being implemented with reference to particular standards orprotocols, the disclosure is not limited to such standards andprotocols. Such standards are from time-to-time superseded by faster ormore efficient equivalents having essentially the same functions.Wireless standards for device detection, short-range communications, andlong-range communications can be used by the computer system 700 inselected embodiments.

The illustrations of the embodiments described herein are intended toprovide a general understanding of the structure of the variousembodiments. The illustrations are not intended to serve as a completedescription of all of the elements and features of apparatus and systemsthat utilize the structures or methods described herein. Many otherembodiments may be apparent to those of skill in the art upon reviewingthe disclosure. Other embodiments may be utilized and derived from thedisclosure, such that structural and logical substitutions and changesmay be made without departing from the scope of the disclosure. Figuresare also merely representational and may not be drawn to scale.Accordingly, the disclosure and the figures are to be regarded asillustrative rather than restrictive.

Although specific embodiments have been illustrated and describedherein, it should be appreciated that any subsequent arrangementdesigned to achieve the same or similar purpose may be substituted forthe specific embodiments shown. This disclosure is intended to cover anyand all subsequent adaptations or variations of various embodiments.

Less than all of the steps or functions described with respect to theexemplary processes or methods can also be performed in one or more ofthe exemplary embodiments. Further, the use of numerical terms todescribe a device, component, step or function, such as first, second,third, and so forth, is not intended to describe an order unlessexpressly stated. The use of the terms first, second, third and soforth, is generally to distinguish between devices, components, steps orfunctions unless expressly stated otherwise. Additionally, one or moredevices or components described with respect to the exemplaryembodiments can facilitate one or more functions, where the facilitating(e.g., facilitating access or facilitating establishing a connection)can include less than every step needed to perform the function or caninclude all of the steps needed to perform the function.

In one or more embodiments, a processor (which can include a controlleror circuit) has been described that performs various functions. Itshould be understood that the processor can be implemented as multipleprocessors, which can include distributed processors or parallelprocessors in a single machine or multiple machines. The processor canbe used in supporting a virtual processing environment. The virtualprocessing environment may support one or more virtual machinesrepresenting computers, servers, or other computing devices. In suchvirtual machines (e.g., virtual servers), components such asmicroprocessors and storage devices may be virtualized or logicallyrepresented. The processor can include a state machine, an applicationspecific integrated circuit, and/or a programmable gate array (PGA)including a FPGA. In one or more embodiments, when a processor executesinstructions to perform “operations”, this can include the processorperforming the operations directly and/or facilitating, directing, orcooperating with another device or component to perform the operations.

The Abstract is provided with the understanding that it will not be usedto interpret or limit the scope or meaning of the claims. In addition,in the foregoing Detailed Description, various features may be groupedtogether or described in a single embodiment for the purpose ofstreamlining the disclosure. This disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter may be directed toless than all of the features of any of the disclosed embodiments. Thus,the following claims are incorporated into the Detailed Description,with each claim standing on its own as defining separately claimedsubject matter.

The above-disclosed subject matter is to be considered illustrative, andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other embodiments, which fall withinthe scope of the present disclosure. Thus, to the maximum extent allowedby law, the scope of the present disclosure is to be determined by thebroadest permissible interpretation of the following claims and theirequivalents, and shall not be restricted or limited by the foregoingdetailed description.

What is claimed is:
 1. A method comprising: receiving, from a mobilecomputing device at a kiosk in a retail store, a first audio signal,wherein the first audio signal includes identifiers of items referencedin a shopping list of an application associated with the retail store,wherein the application is executed at the mobile computing device;sending, from the kiosk to a server, data based on the identifiers;receiving, at the kiosk from the server, item location data, wherein theitem location data identifies a particular item of the shopping list anda corresponding location of the particular item in the retail store; andsending, from the kiosk to the mobile computing device, a second signal,wherein the second signal includes the item location data.
 2. The methodof claim 1, further comprising sending an interface to a display devicecoupled to, or included within, the kiosk responsive to receipt of theitem location data, wherein the display indicates the particular itemand a location of the particular item in the retail store.
 3. The methodof claim 1, wherein the server retrieves the item location data from anitem database, a location database, or both, based on the data.
 4. Themethod of claim 1, wherein the item location data includes an itemidentifier and a location identifier for each item in the shopping listthat is available at the retail store.
 5. The method of claim 1, whereinthe kiosk sends the shopping list to the server via a local areanetwork, the internet, or both.
 6. The method of claim 1, wherein thefirst audio signal is modulated in a human inaudible frequency range. 7.The method of claim 1, wherein the second signal is an audio signal thatis modulated in a human inaudible frequency range.
 8. A retail storekiosk comprising: a processor located in a retail store; a microphonecoupled to the processor, wherein the microphone receives a first audiosignal from a mobile communication device, wherein the first audiosignal includes identifiers of items referenced in a shopping list of anapplication associated with the retail store, and wherein theapplication is executed at the mobile communication device; a networkinterface coupled to the processor, wherein processor causes the networkinterface to send data to a server via a network and to receive, via thenetwork, item location data responsive to the data sent to the server,wherein the data is based on the first audio signal and wherein the itemlocation data identifies a particular item of the shopping list and acorresponding location of the particular item in the retail store; and aspeaker, wherein the processor causes the speaker to send the itemlocation data to the mobile communication device as a second audiosignal.
 9. The retail store kiosk of claim 8, further comprising adisplay device coupled to the processor, wherein the processor displaysthe item location data to the display device.
 10. The retail store kioskof claim 8, wherein the data includes an identifier of the retail store.11. The retail store kiosk of claim 8, wherein the network includes alocal area network, the internet, or both.
 12. The retail store kiosk ofclaim 8, wherein the item location data includes an item identifier anda location identifier for each item referenced in the shopping list thatis available at the retail store.
 13. The retail store kiosk of claim 8,wherein the first audio signal is modulated in a human inaudiblefrequency range.
 14. The retail store kiosk of claim 8, wherein thesecond audio signal is modulated in a human inaudible frequency range.15. A method comprising: sending, from a mobile computing device to akiosk in a retail store, a first audio signal, wherein the first audiosignal includes identifiers of items referenced in a shopping list of anapplication associated with the retail store, the application executedat the mobile computing device; and receiving, at the mobile computingdevice from the kiosk based on the first audio signal, a second signal,wherein the second signal includes item location data, and wherein theitem location data identifies a particular item of the shopping list anda corresponding location of the particular item in the retail store. 16.The method of claim 15, further comprising sending to a display deviceof the mobile computing device an interface that indicates theparticular item and a location of the particular item in the retailstore.
 17. The method of claim 15, further comprising executing theapplication at the mobile computing device.
 18. The method of claim 15,wherein the item location data includes an item identifier and alocation identifier for each item in the shopping list that is availableat the retail store.
 19. The method of claim 15, wherein the first audiosignal is modulated in a human inaudible frequency range.
 20. The methodof claim 15, wherein the second signal is modulated in a human inaudiblefrequency range.